/*
 * pruebaGuardadoRecuperacion.h
 *
 *  Created on: 18/10/2011
 *      Author: pablo
 */

#ifndef PRUEBAGUARDADORECUPERACION_H_
#define PRUEBAGUARDADORECUPERACION_H_

void pruebaGuardadoRecuperacion() {
	std::cout << "Prueba guardado" << std::endl;
	Configuracion c;
	TipoEstatico *t = new TipoEstatico();
	t->setExtension("ext1");
	t->setContenido("cont1");
	c.agregarTipoEstatico(t);

	TipoDinamico *t1 = new TipoDinamico();
	t1->setExtension("mp3");
	t1->setComando("comandoMP3");
	c.agregarTipoDinamico(t1);

	Usuario *usuario = new Usuario();
	usuario->setNombre("Pablo");
	usuario->setClave("1234");
	c.agregarUsuario(usuario);
	Usuario *usuario2 = new Usuario();
	usuario2->setNombre("Pepe");
	usuario2->setClave("123456789");
	c.agregarUsuario(usuario2);

	TipoError *error = new TipoError();
	error->setNroError(500);
	error->setRuta("../paginaError.html");
	c.agregarError(error);
	c.guardarComo("config.xml");
	std::cout << "Guardado como config.xml" << std::endl;

	std::cout << "Se carga desde config.xml" << std::endl;
	Configuracion crec;
	crec.cargarDesde("config.xml");

	// verifico estatico
	if(crec.getTipoEstatico("ext1") == "cont1")
		std::cout << "Recuperacion estatico Ok" << std::endl;
	else
		std::cout << "Recuperacion estatico Error" << std::endl;

	// verifico dinamico
	if(crec.getTipoDinamico("mp3") == "comandoMP3")
		std::cout << "Recuperacion dinamico Ok" << std::endl;
	else
		std::cout << "Recuperacion dinamico Error" << std::endl;

	// verifico usuario
	if(crec.getPassUsuario("Pepe") == "123456789")
		std::cout << "Recuperacion usuario Ok" << std::endl;

	else
		std::cout << "Recuperacion usuario Error" << std::endl;

	// verifico errores
	if(crec.getError(500) == "../paginaError.html"){
		std::cout << "Recuperacion error Ok" << std::endl;
	}else
		std::cout << "Recuperacion error Error" << std::endl;
	std::cout << "FIN GUARDADO Y RECUPERACION" << std::endl;
}



#endif /* PRUEBAGUARDADORECUPERACION_H_ */
